package is.olsenolsen;
//
public class SpilaStokkur {
	//
	public SpilaStokkur(){
		// T�mur klasasmi�ur.
	} // klasasmi�ur.
	//
	/**
	 * Forskilyr�i: Heilt�lufylki me� heilt�lu, sem hver
	 *              fyrir sig t�knar eitt spil, t.d. Spa�ar �s = 1,
	 *              Spa�ar Drottning = 12, . . . , Laufar Konungur = 52,
	 *              S��asti J�karinn = 55, sem d�mi um heilan spilastokk.
	 *              Ef a� stokkarnir eru fleiri, t.d. 2, �� v�ri t.d:
	 *              Spa�ar �s2 = 53 og Spa�ar �s1 = 1, sem d�mi.
	 *              
	 * Eftirskilyr�i: �tkoman ver�ur "stokka�an" spilastokk me�
	 *                heilt�lufylki, sem v�ri eins og stokka�an
	 *                spilastokk.
	 *                
	 * @category samstillt (static) stef stokkaSpilin.
	 * @param    spilastokkur, sem er �stokka�an spilastokkur af
	 *           taginu heilt�lufylki t�kna� sem int[].
	 */
	public static int[] stokkaSpilin(int[] spilaStokkur)
	{
		int fjoldaSpila = 0;
		int geymaSpil   = 0;
		int haMarksSpil = 0;
		Integer i           = 0;
		int j           = 1;
		/*
		 * Finna �t fj�ldi spila � spilastokkinum.
		 */
		fjoldaSpila     = spilaStokkur.length;
		//
		if (fjoldaSpila > 0)
		{
			/*
			 * Fastayr�ing: R�kseg� ef slaufuna er s�nn.
			 */
		    haMarksSpil = fjoldaSpila - 1;
            //
			while (i < haMarksSpil)
			{
				/*
				 * Fastayr�ing: R�kseg� s�-lykkjunnar (while) er s�nn og "efsta"
				 *              spili� � spilastokkinum er "dregi� �t" og v�xla� me�
				 *              n�sta, sem dregi� er �t samkv�mt slemmbi �rtaki me�
				 *              hj�lp slemmbit�lu �r slemmbugjafa.
				 */
				geymaSpil = spilaStokkur[i];
				/*
				 * F� slemmbit�lu, sem n�tist vi� a� taka slemmbi�rtak �r spilastokkinum
				 */
				j = OlsenOlsenModel.einhverTala(Fastar.SPADAR_ASINN, haMarksSpil);
				/*
				 * V�xla spilum
				 */
				spilaStokkur[i] = spilaStokkur[j];
				spilaStokkur[j] = geymaSpil;
				/*
				 * Benda � n�sta spil � spilastokkinum:
				 */
				i++;
			} // while (i < haMarksSpil)
		} // if (fjoldaSpila > 0)
		/*
		 * Skila "stokka�an" spilastokk til kallforritsins.
		 */
		return spilaStokkur;
	} // stokkaSpilin
	//
} // class SpilaStokkur.
